package com.ruoyi.elasticsearch.service;

import com.ruoyi.elasticsearch.entity.Article;

import java.util.List;
import java.util.Optional;

/**
 * @description: 业务方法
 * @author: liyang
 * @date: 2025/7/21 15:36
 **/
public interface ArticleService {

    /**
     * @return
     * @description: 保存数据
     * @author: liyang
     * @date: 2025/7/21 15:58
     * @Param: [article]
     * @Return: void
     */
    Article save(Article article);

    /**
     * @description: 根据id查询
     * @author: liyang
     * @date: 2025/7/21 15:58
     * @Param: [article]
     * @Return: void
     **/
    Optional<Article> findById(String id);

    /**
     * @description: 查询全部数据
     * @author: liyang
     * @date: 2025/7/21 15:58
     * @Param: [article]
     * @Return: void
     **/
    Iterable<Article> findAll();

    /**
     * @description: 删除数据
     * @author: liyang
     * @date: 2025/7/21 15:58
     * @Param: [article]
     * @Return: void
     **/
    void deleteById(String id);

    /**
     * @description: 根据标题关键字内容查询
     * @author: liyang
     * @date: 2025/7/21 15:58
     * @Param: [article]
     * @Return: void
     **/
    List<Article> searchByTitle(String keyword);
}
